package br.com.bestOffer.ejb.discoRigido.entity;

import java.io.Serializable;

import javax.persistence.Column;
import javax.persistence.DiscriminatorValue;
import javax.persistence.Entity;
import javax.persistence.Enumerated;
import javax.persistence.NamedQueries;
import javax.persistence.NamedQuery;
import javax.persistence.Table;

import br.com.bestOffer.ejb.produto.entity.Produto;
import br.com.bestOffer.enumerator.CategoriaProduto;
import br.com.bestOffer.enumerator.TipoArmazenamento;

@Entity
@Table(name="TB14_DISCO_RIGIDO")
@DiscriminatorValue("DiscoRigido")
@NamedQueries({
	@NamedQuery(name="DiscoRigido.listarTodosDiscoRigidos", query="SELECT d FROM DiscoRigido d "),
	@NamedQuery(name="DiscoRigido.buscarDiscoRigidoPorID", query="SELECT d FROM DiscoRigido d WHERE d.id = :idProduto"),
	@NamedQuery(name="DiscoRigido.buscarDiscoRigidoPorIDComAnuncios", query="SELECT d FROM DiscoRigido d LEFT JOIN FETCH d.listaAnuncios WHERE d.id = :idProduto")
})
public class DiscoRigido extends Produto implements Serializable{

	private static final long serialVersionUID = 9044679843535511106L;

	@Column(name="tipo_armazenamento")
	@Enumerated
	private TipoArmazenamento tipoArmazenamento;
	
	@Column(name="capacidade",nullable=false)
	private Integer capacidade;
	
	@Column(name="quantidade_cache",nullable=false)
	private Integer quantidadeCache;
	
	@Column(name="conector",nullable=false,length=10)
	private String conector;
	
	public DiscoRigido(){
		this.setCategoriaProduto(CategoriaProduto.DiscoRigido);
	}
	
	public TipoArmazenamento getTipoArmazenamento() {
		return tipoArmazenamento;
	}

	public void setTipoArmazenamento(TipoArmazenamento tipoArmazenamento) {
		this.tipoArmazenamento = tipoArmazenamento;
	}

	public Integer getCapacidade() {
		return capacidade;
	}

	public void setCapacidade(Integer capacidade) {
		this.capacidade = capacidade;
	}

	public Integer getQuantidadeCache() {
		return quantidadeCache;
	}

	public void setQuantidadeCache(Integer quantidadeCache) {
		this.quantidadeCache = quantidadeCache;
	}

	public String getConector() {
		return conector;
	}

	public void setConector(String conector) {
		this.conector = conector;
	}
	
	
	
}
